<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link href="cpip.css" rel="stylesheet" type="text/css" />
    <title>File: /usr/include/sys/unistd.h</title>
  </head>
  <body>
    <h1>File: /usr/include/sys/unistd.h</h1>
    <p>Green shading in the line number column
means the source is part of the translation unit, red means it is conditionally excluded.
Highlighted line numbers link to the translation unit page. Highlighted macros link to
the macro page.</p>
    <pre><a name="1" /><span class="True">       1:</span> <span class="k">/*</span>
<a name="2" /><span class="True">       2:</span> <span class="k"> * Copyright (c) 2000-2013 Apple Inc. All rights reserved.</span>
<a name="3" /><span class="True">       3:</span> <span class="k"> *</span>
<a name="4" /><span class="True">       4:</span> <span class="k"> * @APPLE_OSREFERENCE_LICENSE_HEADER_START@</span>
<a name="5" /><span class="True">       5:</span> <span class="k"> * </span>
<a name="6" /><span class="True">       6:</span> <span class="k"> * This file contains Original Code and/or Modifications of Original Code</span>
<a name="7" /><span class="True">       7:</span> <span class="k"> * as defined in and that are subject to the Apple Public Source License</span>
<a name="8" /><span class="True">       8:</span> <span class="k"> * Version 2.0 (the &apos;License&apos;). You may not use this file except in</span>
<a name="9" /><span class="True">       9:</span> <span class="k"> * compliance with the License. The rights granted to you under the License</span>
<a name="10" /><span class="True">      10:</span> <span class="k"> * may not be used to create, or enable the creation or redistribution of,</span>
<a name="11" /><span class="True">      11:</span> <span class="k"> * unlawful or unlicensed copies of an Apple operating system, or to</span>
<a name="12" /><span class="True">      12:</span> <span class="k"> * circumvent, violate, or enable the circumvention or violation of, any</span>
<a name="13" /><span class="True">      13:</span> <span class="k"> * terms of an Apple operating system software license agreement.</span>
<a name="14" /><span class="True">      14:</span> <span class="k"> * </span>
<a name="15" /><span class="True">      15:</span> <span class="k"> * Please obtain a copy of the License at</span>
<a name="16" /><span class="True">      16:</span> <span class="k"> * http://www.opensource.apple.com/apsl/ and read it before using this file.</span>
<a name="17" /><span class="True">      17:</span> <span class="k"> * </span>
<a name="18" /><span class="True">      18:</span> <span class="k"> * The Original Code and all software distributed under the License are</span>
<a name="19" /><span class="True">      19:</span> <span class="k"> * distributed on an &apos;AS IS&apos; basis, WITHOUT WARRANTY OF ANY KIND, EITHER</span>
<a name="20" /><span class="True">      20:</span> <span class="k"> * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,</span>
<a name="21" /><span class="True">      21:</span> <span class="k"> * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,</span>
<a name="22" /><span class="True">      22:</span> <span class="k"> * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.</span>
<a name="23" /><span class="True">      23:</span> <span class="k"> * Please see the License for the specific language governing rights and</span>
<a name="24" /><span class="True">      24:</span> <span class="k"> * limitations under the License.</span>
<a name="25" /><span class="True">      25:</span> <span class="k"> * </span>
<a name="26" /><span class="True">      26:</span> <span class="k"> * @APPLE_OSREFERENCE_LICENSE_HEADER_END@</span>
<a name="27" /><span class="True">      27:</span> <span class="k"> */</span>
<a name="28" /><span class="True">      28:</span> <span class="k">/* Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved */</span>
<a name="29" /><span class="True">      29:</span> <span class="k">/*</span>
<a name="30" /><span class="True">      30:</span> <span class="k"> * Copyright (c) 1989, 1993</span>
<a name="31" /><span class="True">      31:</span> <span class="k"> *    The Regents of the University of California.  All rights reserved.</span>
<a name="32" /><span class="True">      32:</span> <span class="k"> *</span>
<a name="33" /><span class="True">      33:</span> <span class="k"> * Redistribution and use in source and binary forms, with or without</span>
<a name="34" /><span class="True">      34:</span> <span class="k"> * modification, are permitted provided that the following conditions</span>
<a name="35" /><span class="True">      35:</span> <span class="k"> * are met:</span>
<a name="36" /><span class="True">      36:</span> <span class="k"> * 1. Redistributions of source code must retain the above copyright</span>
<a name="37" /><span class="True">      37:</span> <span class="k"> *    notice, this list of conditions and the following disclaimer.</span>
<a name="38" /><span class="True">      38:</span> <span class="k"> * 2. Redistributions in binary form must reproduce the above copyright</span>
<a name="39" /><span class="True">      39:</span> <span class="k"> *    notice, this list of conditions and the following disclaimer in the</span>
<a name="40" /><span class="True">      40:</span> <span class="k"> *    documentation and/or other materials provided with the distribution.</span>
<a name="41" /><span class="True">      41:</span> <span class="k"> * 3. All advertising materials mentioning features or use of this software</span>
<a name="42" /><span class="True">      42:</span> <span class="k"> *    must display the following acknowledgement:</span>
<a name="43" /><span class="True">      43:</span> <span class="k"> *    This product includes software developed by the University of</span>
<a name="44" /><span class="True">      44:</span> <span class="k"> *    California, Berkeley and its contributors.</span>
<a name="45" /><span class="True">      45:</span> <span class="k"> * 4. Neither the name of the University nor the names of its contributors</span>
<a name="46" /><span class="True">      46:</span> <span class="k"> *    may be used to endorse or promote products derived from this software</span>
<a name="47" /><span class="True">      47:</span> <span class="k"> *    without specific prior written permission.</span>
<a name="48" /><span class="True">      48:</span> <span class="k"> *</span>
<a name="49" /><span class="True">      49:</span> <span class="k"> * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS&apos;&apos; AND</span>
<a name="50" /><span class="True">      50:</span> <span class="k"> * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE</span>
<a name="51" /><span class="True">      51:</span> <span class="k"> * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE</span>
<a name="52" /><span class="True">      52:</span> <span class="k"> * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE</span>
<a name="53" /><span class="True">      53:</span> <span class="k"> * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL</span>
<a name="54" /><span class="True">      54:</span> <span class="k"> * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS</span>
<a name="55" /><span class="True">      55:</span> <span class="k"> * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)</span>
<a name="56" /><span class="True">      56:</span> <span class="k"> * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT</span>
<a name="57" /><span class="True">      57:</span> <span class="k"> * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY</span>
<a name="58" /><span class="True">      58:</span> <span class="k"> * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF</span>
<a name="59" /><span class="True">      59:</span> <span class="k"> * SUCH DAMAGE.</span>
<a name="60" /><span class="True">      60:</span> <span class="k"> *</span>
<a name="61" /><span class="True">      61:</span> <span class="k"> *    @(#)unistd.h    8.2 (Berkeley) 1/7/94</span>
<a name="62" /><span class="True">      62:</span> <span class="k"> */</span>
<a name="63" /><span class="True">      63:</span> 
<a name="64" /><span class="True">      64:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="macros_noref.html#_X1NZU19VTklTVERfSF9fMA__"><span class="b">_SYS_UNISTD_H_</span></a>
<a name="65" /><span class="True">      65:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1NZU19VTklTVERfSF9fMA__"><span class="b">_SYS_UNISTD_H_</span></a>
<a name="66" /><span class="True">      66:</span> 
<a name="67" /><span class="True">      67:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">cdefs</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="68" /><span class="True">      68:</span> 
<a name="69" /><span class="True">      69:</span> <span class="k">/*</span>
<a name="70" /><span class="True">      70:</span> <span class="k"> * Although we have saved user/group IDs, we do not use them in setuid</span>
<a name="71" /><span class="True">      71:</span> <span class="k"> * as described in POSIX 1003.1, because the feature does not work for</span>
<a name="72" /><span class="True">      72:</span> <span class="k"> * root.  We use the saved IDs in seteuid/setegid, which are not currently</span>
<a name="73" /><span class="True">      73:</span> <span class="k"> * part of the POSIX 1003.1 specification.</span>
<a name="74" /><span class="True">      74:</span> <span class="k"> */</span>
<a name="75" /><span class="False">      75:</span> <span class="f">#</span><span class="n">ifdef</span>    <span class="b">_NOT_AVAILABLE</span>
<a name="76" /><span class="False">      76:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BPU0lYX1NBVkVEX0lEU18w"><span class="b">_POSIX_SAVED_IDS</span></a>    <span class="k">/* saved set-user-ID and set-group-ID */</span>
<a name="77" /><span class="True">      77:</span> <span class="f">#</span><span class="n">endif</span>
<a name="78" /><span class="True">      78:</span> 
<a name="79" /><span class="True">      79:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BPU0lYX1ZFUlNJT05fMA__"><span class="b">_POSIX_VERSION</span></a>        <span class="c">200112L</span>
<a name="80" /><span class="True">      80:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BPU0lYMl9WRVJTSU9OXzA_"><span class="b">_POSIX2_VERSION</span></a>        <span class="c">200112L</span>
<a name="81" /><span class="True">      81:</span> 
<a name="82" /><span class="True">      82:</span> <span class="k">/* execution-time symbolic constants */</span>
<a name="83" /><span class="True">      83:</span>                 <span class="k">/* may disable terminal special characters */</span>
<a name="84" /><span class="True">      84:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">/</span><span class="b">_posix_vdisable</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="85" /><span class="True">      85:</span> 
<a name="86" /><span class="True">      86:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1BPU0lYX1RIUkVBRF9LRVlTX01BWF8w"><span class="b">_POSIX_THREAD_KEYS_MAX</span></a> <span class="c">128</span>
<a name="87" /><span class="True">      87:</span> 
<a name="88" /><span class="True">      88:</span> <span class="k">/* access function */</span>
<a name="89" /><span class="True">      89:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_Rl9PS18w"><span class="b">F_OK</span></a>        <span class="c">0</span>    <span class="k">/* test for existence of file */</span>
<a name="90" /><span class="True">      90:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_WF9PS18w"><span class="b">X_OK</span></a>        <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">0</span><span class="f">)</span>    <span class="k">/* test for execute or search permission */</span>
<a name="91" /><span class="True">      91:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_V19PS18w"><span class="b">W_OK</span></a>        <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* test for write permission */</span>
<a name="92" /><span class="True">      92:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_Ul9PS18w"><span class="b">R_OK</span></a>        <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* test for read permission */</span>
<a name="93" /><span class="True">      93:</span> 
<a name="94" /><span class="True">      94:</span> <span class="f">#</span><span class="n">if</span> <span class="f">!</span><span class="b">defined</span><span class="f">(</span><span class="b">_POSIX_C_SOURCE</span><span class="f">)</span> <span class="f">||</span> <span class="b">defined</span><span class="f">(</span><a href="macros_ref.html#_X0RBUldJTl9DX1NPVVJDRV8w"><span class="b">_DARWIN_C_SOURCE</span></a><span class="f">)</span>
<a name="95" /><span class="True">      95:</span> <span class="k">/*</span>
<a name="96" /><span class="True">      96:</span> <span class="k"> * Extended access functions.</span>
<a name="97" /><span class="True">      97:</span> <span class="k"> * Note that we depend on these matching the definitions in sys/kauth.h,</span>
<a name="98" /><span class="True">      98:</span> <span class="k"> * but with the bits shifted left by 8.</span>
<a name="99" /><span class="True">      99:</span> <span class="k"> */</span>
<a name="100" /><span class="True">     100:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1JFQURfT0tfMA__"><span class="b">_READ_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">9</span><span class="f">)</span>    <span class="k">/* read file data / read directory */</span>
<a name="101" /><span class="True">     101:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1dSSVRFX09LXzA_"><span class="b">_WRITE_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">10</span><span class="f">)</span>    <span class="k">/* write file data / add file to directory */</span>
<a name="102" /><span class="True">     102:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X0VYRUNVVEVfT0tfMA__"><span class="b">_EXECUTE_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">11</span><span class="f">)</span> <span class="k">/* execute file / search in directory*/</span>
<a name="103" /><span class="True">     103:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X0RFTEVURV9PS18w"><span class="b">_DELETE_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">12</span><span class="f">)</span>    <span class="k">/* delete file / delete directory */</span>
<a name="104" /><span class="True">     104:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X0FQUEVORF9PS18w"><span class="b">_APPEND_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">13</span><span class="f">)</span>    <span class="k">/* append to file / add subdirectory to directory */</span>
<a name="105" /><span class="True">     105:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1JNRklMRV9PS18w"><span class="b">_RMFILE_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">14</span><span class="f">)</span>    <span class="k">/* - / remove file from directory */</span>
<a name="106" /><span class="True">     106:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1JBVFRSX09LXzA_"><span class="b">_RATTR_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">15</span><span class="f">)</span>    <span class="k">/* read basic attributes */</span>
<a name="107" /><span class="True">     107:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1dBVFRSX09LXzA_"><span class="b">_WATTR_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">16</span><span class="f">)</span>    <span class="k">/* write basic attributes */</span>
<a name="108" /><span class="True">     108:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1JFWFRfT0tfMA__"><span class="b">_REXT_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">17</span><span class="f">)</span>    <span class="k">/* read extended attributes */</span>
<a name="109" /><span class="True">     109:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1dFWFRfT0tfMA__"><span class="b">_WEXT_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">18</span><span class="f">)</span>    <span class="k">/* write extended attributes */</span>
<a name="110" /><span class="True">     110:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1JQRVJNX09LXzA_"><span class="b">_RPERM_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">19</span><span class="f">)</span>    <span class="k">/* read permissions */</span>
<a name="111" /><span class="True">     111:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1dQRVJNX09LXzA_"><span class="b">_WPERM_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">20</span><span class="f">)</span>    <span class="k">/* write permissions */</span>
<a name="112" /><span class="True">     112:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X0NIT1dOX09LXzA_"><span class="b">_CHOWN_OK</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">21</span><span class="f">)</span>    <span class="k">/* change ownership */</span>
<a name="113" /><span class="True">     113:</span> 
<a name="114" /><span class="True">     114:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X0FDQ0VTU19FWFRFTkRFRF9NQVNLXzA_"><span class="b">_ACCESS_EXTENDED_MASK</span></a> <span class="f">(</span><a href="macros_noref.html#_X1JFQURfT0tfMA__"><span class="b">_READ_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X1dSSVRFX09LXzA_"><span class="b">_WRITE_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X0VYRUNVVEVfT0tfMA__"><span class="b">_EXECUTE_OK</span></a> <span class="f">|</span> \
<a name="115" /><span class="True">     115:</span>                 <a href="macros_noref.html#_X0RFTEVURV9PS18w"><span class="b">_DELETE_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X0FQUEVORF9PS18w"><span class="b">_APPEND_OK</span></a> <span class="f">|</span> \
<a name="116" /><span class="True">     116:</span>                 <a href="macros_noref.html#_X1JNRklMRV9PS18w"><span class="b">_RMFILE_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X1JFWFRfT0tfMA__"><span class="b">_REXT_OK</span></a> <span class="f">|</span> \
<a name="117" /><span class="True">     117:</span>                 <a href="macros_noref.html#_X1dFWFRfT0tfMA__"><span class="b">_WEXT_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X1JBVFRSX09LXzA_"><span class="b">_RATTR_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X1dBVFRSX09LXzA_"><span class="b">_WATTR_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X1JQRVJNX09LXzA_"><span class="b">_RPERM_OK</span></a> <span class="f">|</span> \
<a name="118" /><span class="True">     118:</span>                 <a href="macros_noref.html#_X1dQRVJNX09LXzA_"><span class="b">_WPERM_OK</span></a> <span class="f">|</span> <a href="macros_noref.html#_X0NIT1dOX09LXzA_"><span class="b">_CHOWN_OK</span></a><span class="f">)</span>
<a name="119" /><span class="True">     119:</span> <span class="f">#</span><span class="n">endif</span>
<a name="120" /><span class="True">     120:</span> 
<a name="121" /><span class="True">     121:</span> <span class="k">/* whence values for lseek(2) */</span>
<a name="122" /><span class="True">     122:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">/</span><span class="b">_seek_set</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="123" /><span class="True">     123:</span> 
<a name="124" /><span class="True">     124:</span> <span class="f">#</span><span class="n">if</span> <span class="f">!</span><span class="b">defined</span><span class="f">(</span><span class="b">_POSIX_C_SOURCE</span><span class="f">)</span> <span class="f">||</span> <span class="b">defined</span><span class="f">(</span><a href="macros_ref.html#_X0RBUldJTl9DX1NPVVJDRV8w"><span class="b">_DARWIN_C_SOURCE</span></a><span class="f">)</span>
<a name="125" /><span class="True">     125:</span> <span class="k">/* whence values for lseek(2); renamed by POSIX 1003.1 */</span>
<a name="126" /><span class="True">     126:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_TF9TRVRfMA__"><span class="b">L_SET</span></a>        <a href="macros_ref.html#_U0VFS19TRVRfMA__"><span class="b">SEEK_SET</span></a>
<a name="127" /><span class="True">     127:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_TF9JTkNSXzA_"><span class="b">L_INCR</span></a>        <a href="macros_ref.html#_U0VFS19DVVJfMA__"><span class="b">SEEK_CUR</span></a>
<a name="128" /><span class="True">     128:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_TF9YVE5EXzA_"><span class="b">L_XTND</span></a>        <a href="macros_ref.html#_U0VFS19FTkRfMA__"><span class="b">SEEK_END</span></a>
<a name="129" /><span class="True">     129:</span> <span class="f">#</span><span class="n">endif</span>
<a name="130" /><span class="True">     130:</span> 
<a name="131" /><span class="True">     131:</span> <span class="f">#</span><span class="n">if</span> <span class="f">!</span><span class="b">defined</span><span class="f">(</span><span class="b">_POSIX_C_SOURCE</span><span class="f">)</span> <span class="f">||</span> <span class="b">defined</span><span class="f">(</span><a href="macros_ref.html#_X0RBUldJTl9DX1NPVVJDRV8w"><span class="b">_DARWIN_C_SOURCE</span></a><span class="f">)</span>
<a name="132" /><span class="True">     132:</span> <span class="m">struct</span> <span class="b">accessx_descriptor</span> <span class="f">{</span>
<a name="133" /><span class="True">     133:</span>     <span class="m">unsigned</span> <span class="m">int</span> <span class="b">ad_name_offset</span><span class="f">;</span>
<a name="134" /><span class="True">     134:</span>     <span class="m">int</span> <span class="b">ad_flags</span><span class="f">;</span>
<a name="135" /><span class="True">     135:</span>     <span class="m">int</span> <span class="b">ad_pad</span><span class="f">[</span><span class="c">2</span><span class="f">]</span><span class="f">;</span>
<a name="136" /><span class="True">     136:</span> <span class="f">}</span><span class="f">;</span>
<a name="137" /><span class="True">     137:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_QUNDRVNTWF9NQVhfREVTQ1JJUFRPUlNfMA__"><span class="b">ACCESSX_MAX_DESCRIPTORS</span></a>    <span class="c">100</span>
<a name="138" /><span class="True">     138:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_QUNDRVNTWF9NQVhfVEFCTEVTSVpFXzA_"><span class="b">ACCESSX_MAX_TABLESIZE</span></a>    <span class="f">(</span><span class="c">16</span> <span class="f">*</span> <span class="c">1024</span><span class="f">)</span>
<a name="139" /><span class="True">     139:</span> <span class="f">#</span><span class="n">endif</span>
<a name="140" /><span class="True">     140:</span> 
<a name="141" /><span class="True">     141:</span> <span class="k">/* configurable pathname variables */</span>
<a name="142" /><span class="True">     142:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX0xJTktfTUFYXzA_"><span class="b">_PC_LINK_MAX</span></a>         <span class="c">1</span>
<a name="143" /><span class="True">     143:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX01BWF9DQU5PTl8w"><span class="b">_PC_MAX_CANON</span></a>         <span class="c">2</span>
<a name="144" /><span class="True">     144:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX01BWF9JTlBVVF8w"><span class="b">_PC_MAX_INPUT</span></a>         <span class="c">3</span>
<a name="145" /><span class="True">     145:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX05BTUVfTUFYXzA_"><span class="b">_PC_NAME_MAX</span></a>         <span class="c">4</span>
<a name="146" /><span class="True">     146:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1BBVEhfTUFYXzA_"><span class="b">_PC_PATH_MAX</span></a>         <span class="c">5</span>
<a name="147" /><span class="True">     147:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1BJUEVfQlVGXzA_"><span class="b">_PC_PIPE_BUF</span></a>         <span class="c">6</span>
<a name="148" /><span class="True">     148:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX0NIT1dOX1JFU1RSSUNURURfMA__"><span class="b">_PC_CHOWN_RESTRICTED</span></a>     <span class="c">7</span>
<a name="149" /><span class="True">     149:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX05PX1RSVU5DXzA_"><span class="b">_PC_NO_TRUNC</span></a>         <span class="c">8</span>
<a name="150" /><span class="True">     150:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1ZESVNBQkxFXzA_"><span class="b">_PC_VDISABLE</span></a>         <span class="c">9</span>
<a name="151" /><span class="True">     151:</span> 
<a name="152" /><span class="True">     152:</span> <span class="f">#</span><span class="n">if</span> <span class="f">!</span><span class="b">defined</span><span class="f">(</span><span class="b">_POSIX_C_SOURCE</span><span class="f">)</span> <span class="f">||</span> <span class="b">defined</span><span class="f">(</span><a href="macros_ref.html#_X0RBUldJTl9DX1NPVVJDRV8w"><span class="b">_DARWIN_C_SOURCE</span></a><span class="f">)</span>
<a name="153" /><span class="True">     153:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX05BTUVfQ0hBUlNfTUFYXzA_"><span class="b">_PC_NAME_CHARS_MAX</span></a>     <span class="c">10</span>
<a name="154" /><span class="True">     154:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX0NBU0VfU0VOU0lUSVZFXzA_"><span class="b">_PC_CASE_SENSITIVE</span></a>         <span class="c">11</span>
<a name="155" /><span class="True">     155:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX0NBU0VfUFJFU0VSVklOR18w"><span class="b">_PC_CASE_PRESERVING</span></a>         <span class="c">12</span>
<a name="156" /><span class="True">     156:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1BDX0VYVEVOREVEX1NFQ1VSSVRZX05QXzA_"><span class="b">_PC_EXTENDED_SECURITY_NP</span></a>        <span class="c">13</span>
<a name="157" /><span class="True">     157:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1BDX0FVVEhfT1BBUVVFX05QXzA_"><span class="b">_PC_AUTH_OPAQUE_NP</span></a>      <span class="c">14</span>
<a name="158" /><span class="True">     158:</span> <span class="f">#</span><span class="n">endif</span>
<a name="159" /><span class="True">     159:</span> 
<a name="160" /><span class="True">     160:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDXzJfU1lNTElOS1NfMA__"><span class="b">_PC_2_SYMLINKS</span></a>        <span class="c">15</span>    <span class="k">/* Symlink supported in directory */</span>
<a name="161" /><span class="True">     161:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX0FMTE9DX1NJWkVfTUlOXzA_"><span class="b">_PC_ALLOC_SIZE_MIN</span></a>    <span class="c">16</span>    <span class="k">/* Minimum storage actually allocated */</span>
<a name="162" /><span class="True">     162:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX0FTWU5DX0lPXzA_"><span class="b">_PC_ASYNC_IO</span></a>        <span class="c">17</span>    <span class="k">/* Async I/O [AIO] supported? */</span>
<a name="163" /><span class="True">     163:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX0ZJTEVTSVpFQklUU18w"><span class="b">_PC_FILESIZEBITS</span></a>    <span class="c">18</span>    <span class="k">/* # of bits to represent file size */</span>
<a name="164" /><span class="True">     164:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1BSSU9fSU9fMA__"><span class="b">_PC_PRIO_IO</span></a>        <span class="c">19</span>    <span class="k">/* Priority I/O [PIO] supported? */</span>
<a name="165" /><span class="True">     165:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1JFQ19JTkNSX1hGRVJfU0laRV8w"><span class="b">_PC_REC_INCR_XFER_SIZE</span></a>    <span class="c">20</span>    <span class="k">/* Recommended increment for next two */</span>
<a name="166" /><span class="True">     166:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1JFQ19NQVhfWEZFUl9TSVpFXzA_"><span class="b">_PC_REC_MAX_XFER_SIZE</span></a>    <span class="c">21</span>    <span class="k">/* Recommended max file transfer size */</span>
<a name="167" /><span class="True">     167:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1JFQ19NSU5fWEZFUl9TSVpFXzA_"><span class="b">_PC_REC_MIN_XFER_SIZE</span></a>    <span class="c">22</span>    <span class="k">/* Recommended min file transfer size */</span>
<a name="168" /><span class="True">     168:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1JFQ19YRkVSX0FMSUdOXzA_"><span class="b">_PC_REC_XFER_ALIGN</span></a>    <span class="c">23</span>    <span class="k">/* Recommended buffer alignment */</span>
<a name="169" /><span class="True">     169:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1NZTUxJTktfTUFYXzA_"><span class="b">_PC_SYMLINK_MAX</span></a>        <span class="c">24</span>    <span class="k">/* Max # of bytes in symlink name */</span>
<a name="170" /><span class="True">     170:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_noref.html#_X1BDX1NZTkNfSU9fMA__"><span class="b">_PC_SYNC_IO</span></a>        <span class="c">25</span>    <span class="k">/* Sync I/O [SIO] supported? */</span>
<a name="171" /><span class="True">     171:</span> <span class="f">#</span><span class="n">define</span> <a href="macros_noref.html#_X1BDX1hBVFRSX1NJWkVfQklUU18w"><span class="b">_PC_XATTR_SIZE_BITS</span></a>     <span class="c">26</span>    <span class="k">/* # of bits to represent maximum xattr size */</span>
<a name="172" /><span class="True">     172:</span> 
<a name="173" /><span class="True">     173:</span> <span class="k">/* configurable system strings */</span>
<a name="174" /><span class="True">     174:</span> <span class="f">#</span><span class="n">define</span>    <a href="macros_ref.html#_X0NTX1BBVEhfMA__"><span class="b">_CS_PATH</span></a>         <span class="c">1</span>
<a name="175" /><span class="True">     175:</span> 
<a name="176" /><span class="True">     176:</span> <span class="f">#</span><span class="n">if</span> <a href="macros_ref.html#_X19EQVJXSU5fQ19MRVZFTF8w"><span class="b">__DARWIN_C_LEVEL</span></a> <span class="f">&gt;=</span> <a href="macros_ref.html#_X19EQVJXSU5fQ19GVUxMXzA_"><span class="b">__DARWIN_C_FULL</span></a>
<a name="177" /><span class="True">     177:</span> 
<a name="178" /><span class="True">     178:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">machine</span><span class="f">/</span><span class="b">_types</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="179" /><span class="True">     179:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">/</span><span class="b">_size_t</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="180" /><span class="True">     180:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">_types</span><span class="f">/</span><span class="b">_uint64_t</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="181" /><span class="True">     181:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">Availability</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="182" /><span class="True">     182:</span> 
<a name="183" /><span class="True">     183:</span> <a href="macros_ref.html#_X19CRUdJTl9ERUNMU18w"><span class="b">__BEGIN_DECLS</span></a>
<a name="184" /><span class="True">     184:</span> 
<a name="185" /><span class="True">     185:</span> <span class="m">int</span> <span class="b">getattrlistbulk</span><span class="f">(</span><span class="m">int</span><span class="f">,</span> <span class="m">void</span> <span class="f">*</span><span class="f">,</span> <span class="m">void</span> <span class="f">*</span><span class="f">,</span> <span class="b">size_t</span><span class="f">,</span> <span class="b">uint64_t</span><span class="f">)</span> <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="186" /><span class="True">     186:</span> 
<a name="187" /><span class="True">     187:</span> <a href="macros_ref.html#_X19FTkRfREVDTFNfMA__"><span class="b">__END_DECLS</span></a>
<a name="188" /><span class="True">     188:</span> 
<a name="189" /><span class="True">     189:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* __DARWIN_C_LEVEL &gt;= __DARWIN_C_FULL */</span>
<a name="190" /><span class="True">     190:</span> 
<a name="191" /><span class="True">     191:</span> <span class="f">#</span><span class="n">if</span> <a href="macros_ref.html#_X19EQVJXSU5fQ19MRVZFTF8w"><span class="b">__DARWIN_C_LEVEL</span></a> <span class="f">&gt;=</span> <span class="c">200809L</span>
<a name="192" /><span class="True">     192:</span> 
<a name="193" /><span class="True">     193:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">machine</span><span class="f">/</span><span class="b">_types</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="194" /><span class="True">     194:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">/</span><span class="b">_size_t</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="195" /><span class="True">     195:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">/</span><span class="b">_ssize_t</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="196" /><span class="True">     196:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="197" /><span class="True">     197:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">/</span><span class="b">_uid_t</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="198" /><span class="True">     198:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">sys</span><span class="f">/</span><span class="b">_types</span><span class="f">/</span><span class="b">_gid_t</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="199" /><span class="True">     199:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">Availability</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="200" /><span class="True">     200:</span> 
<a name="201" /><span class="True">     201:</span> <a href="macros_ref.html#_X19CRUdJTl9ERUNMU18w"><span class="b">__BEGIN_DECLS</span></a>
<a name="202" /><span class="True">     202:</span> 
<a name="203" /><span class="True">     203:</span> <span class="m">int</span>    <span class="b">faccessat</span><span class="f">(</span><span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="m">int</span><span class="f">,</span> <span class="m">int</span><span class="f">)</span> <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="204" /><span class="True">     204:</span> <span class="m">int</span>    <span class="b">fchownat</span><span class="f">(</span><span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="b">uid_t</span><span class="f">,</span> <span class="b">gid_t</span><span class="f">,</span> <span class="m">int</span><span class="f">)</span>    <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="205" /><span class="True">     205:</span> <span class="m">int</span>    <span class="b">linkat</span><span class="f">(</span><span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="m">int</span><span class="f">)</span>    <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="206" /><span class="True">     206:</span> <span class="b">ssize_t</span> <span class="b">readlinkat</span><span class="f">(</span><span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="b">size_t</span><span class="f">)</span>    <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="207" /><span class="True">     207:</span> <span class="m">int</span>    <span class="b">symlinkat</span><span class="f">(</span><span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">)</span> <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="208" /><span class="True">     208:</span> <span class="m">int</span>    <span class="b">unlinkat</span><span class="f">(</span><span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="m">int</span><span class="f">)</span> <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="209" /><span class="True">     209:</span> <span class="m">int</span>    <span class="b">getattrlistat</span><span class="f">(</span><span class="m">int</span><span class="f">,</span> <span class="m">const</span> <span class="m">char</span> <span class="f">*</span><span class="f">,</span> <span class="m">void</span> <span class="f">*</span><span class="f">,</span> <span class="m">void</span> <span class="f">*</span><span class="f">,</span> <span class="b">size_t</span><span class="f">,</span> <span class="m">unsigned</span> <span class="m">long</span><span class="f">)</span> <a href="macros_ref.html#_X19PU1hfQVZBSUxBQkxFX1NUQVJUSU5HXzA_"><span class="b">__OSX_AVAILABLE_STARTING</span></a><span class="f">(</span><a href="macros_ref.html#_X19NQUNfMTBfMTBfMA__"><span class="b">__MAC_10_10</span></a><span class="f">,</span> <a href="macros_ref.html#_X19JUEhPTkVfOF8wXzA_"><span class="b">__IPHONE_8_0</span></a><span class="f">)</span><span class="f">;</span>
<a name="210" /><span class="True">     210:</span> 
<a name="211" /><span class="True">     211:</span> <a href="macros_ref.html#_X19FTkRfREVDTFNfMA__"><span class="b">__END_DECLS</span></a>
<a name="212" /><span class="True">     212:</span> 
<a name="213" /><span class="True">     213:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* __DARWIN_C_LEVEL &gt;= 200809L */</span>
<a name="214" /><span class="True">     214:</span> 
<a name="215" /><span class="True">     215:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* !_SYS_UNISTD_H_ */</span>
<a name="216" /><span class="True">     216:</span> </pre>
  </body>
</html>
